草庐IT

Android Parcelable 和 Serializable

全部标签

android - 将 Serializable 对象写入外部存储时出现 java.io.NotSerializableException?

friend,我正在使用以下代码将可序列化对象写入外部存储。它抛出错误java.io.NotSerializableException即使我的对象是可序列化的,有人指导我我在做什么错误吗?publicclassMyClassimplementsSerializable{//otherveriablestuffhere...publicStringtitle;publicStringstartTime;publicStringendTime;publicbooleanclassEnabled;publicContextmyContext;publicMyClass(Contextcont

java - 如何在 Kotlin 中实现 Serializable 使其在 Java 中也能工作?

我有一些多年来一直在Java中使用的代码,但在Kotlin中需要它(它的接口(interface)扩展了集合接口(interface))。有些类是可序列化的。当我尝试明显时,我得到“无法访问'Serializable':它在kotlin.io中是内部的”:classFoo(valsomeField:Int):Serializable{companionobject{privateconstvalserialVersionUID=20180617104400L}}那么,我只是导入java.io.Serializable,还是会导致其他问题? 最佳答案

java - 如何在 Kotlin 中实现 Serializable 使其在 Java 中也能工作?

我有一些多年来一直在Java中使用的代码,但在Kotlin中需要它(它的接口(interface)扩展了集合接口(interface))。有些类是可序列化的。当我尝试明显时,我得到“无法访问'Serializable':它在kotlin.io中是内部的”:classFoo(valsomeField:Int):Serializable{companionobject{privateconstvalserialVersionUID=20180617104400L}}那么,我只是导入java.io.Serializable,还是会导致其他问题? 最佳答案

.net - System.Serializable 属性在 Windows 10 UWP 应用程序中消失了吗?

在尝试将开源库(Aforge.net)移植到UWP时,我发现System.Serializable属性似乎不存在。UWP引用的工作方式略有不同,我仍在努力思考这些变化,所以我希望我只是遗漏了一些简单的东西。我的问题是,有人可以确认System.Serializable属性在UWP应用程序中是否有效/应该有效吗?我试过浏览MSDN和其他各种谷歌资源,但无法以任何方式找到任何证据。非常感谢任何帮助。更新看起来我可能需要使用DataContract/DataMember属性而不是Serializable,就像这里提到的可移植库:Portableclasslibrary:recommended

java - 移动类包时抛出 Serializable class not found CLASSNAME 错误(即使 serialVersionUID 已在类中说明)

我正在使用Redis(通过redisson)我有一个DTO类,我正在将其序列化并反序列化到Redis,我使用的编解码器是:org.redisson.codec.FstCodec尽管在类的DTO类中显式设置了serialVersionUID,但当我将该类移动到不同的命名空间时,我得到以下异常:java.io.IOException:java.lang.RuntimeException:classnotfoundCLASSNAME:db.data.coins.CoinDTOloader:jdk.internal.loader.ClassLoaders$AppClassLoader@6ed3

java - Serializable/Cloneable/... 的惯用设计在 Scala 中看起来如何?

我想知道如果Scala不(必须)遵循Java的java.io.Serializable/,这些功能看起来会有多少不同(以及实现会有多不同)java.lang.Cloneable(主要是为了与Java及其周围的工具/生态系统保持兼容)。由于Scala在语言设计上更简单,但具有更强大的实现和抽象可能性,因此可以想象,如果Scala不必承担Java兼容性负担,它可能会选择与Java不同的道路。我可以想象一个惯用的实现会使用带有(可能)私有(private)字段/方法(在Java接口(interface)中不可能?)的类型类或特征,也许会携带一些标准实现?或者标记接口(interface)在S

java - 在 java 中,如何序列化未标记为 Serializable 的类?

我想序列化第三方库中的特定类。我该怎么做呢?我假设我必须编写一个方法来接收类的对象并使用反射来获取私有(private)成员值。然后对于反序列化,我将使用反射将值放回原处。这行得通吗?有没有更简单的方法? 最佳答案 您可以只使用实现Serializable的传输对象,并且具有与第三方对象相同的字段。让传输对象实现一个返回原始第三方类对象的方法,就大功告成了:伪代码:classThirdParty{intfield1;intfield2;}classTransferimplementsSerializable{intfield1;in

java - Java中的Serializable接口(interface)虽然没有方法,没有字段,但是可以实现它的功能。如何?

虽然java.io.Serializable接口(interface)publicinterfaceSerializable{}令人惊讶的没有包含Java中的任何方法和字段,但是实现这个接口(interface)的类是能够实现序列化的功能和反序列化(被序列化或反序列化的对象的状态)。Java中没有任何方法或字段,如何实现序列化和反序列化的功能? 最佳答案 一些接口(interface)仅作为“标记”或“标志”。UID和自定义读取器/写入器通过反射访问。Serializable是一个标记,JRE/JVM可以根据它的存在采取行动。htt

java - gwt - 在 RPC 调用中使用 List<Serializable>?

我有一个使用以下方法的RPC服务:publicListmyMethod(TransactionCallcall){...}但是我在分析这个方法的时候得到一个警告,然后rpc调用失败Analyzing'my.project.package.myService'forserializabletypesAnalyzingmethods:publicabstractjava.util.ListmyMethod(my.project.package.TransactionCallcall)Returntype:java.util.List[...]java.io.SerializableVeri

java - 字段添加或删除等类更改是否保持 Serializable 的向后兼容性?

在您可能需要修改可序列化类并保持向后兼容性的情况下,我有一个关于Java序列化的问题。我有深厚的C#经验,所以请允许我将Java与.NET进行比较。在我的Java场景中,我需要使用Java的运行时序列化机制序列化一个对象,并将二进制数据存储在永久存储中以供将来重用这些对象。问题是,在未来,类可能会发生变化。可以添加或删除字段。除了这篇关于如何nottoprograminJava的精彩文章外,我对Java序列化一无所知。在处理序列化时。正如我想象的那样(d),serialVersionUID在Java序列化中起着关键作用,这就是我需要您帮助的地方。除了文章的示例(我知道这是错误的编码),